Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-LAP-011 |
| Deskripsi | Kumpulan laporan saldo dan persediaan stok: saldo stok per barang atau SKU, ringkasan nilai persediaan barang, laporan custom pivot persediaan, serta halaman stok dan nilai persediaan |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User membuka laporan saldo stok, ringkasan persediaan barang, laporan custom pivot persediaan, dan halaman stok serta nilai persediaan dari kelompok Laporan Stok dan Persediaan.
- User memfilter periode, cabang/gudang, stok, work center, dan pencarian barang sesuai halaman.
- User melihat saldo kuantitas sesungguhnya dan rencana kuantitas tersedia (saldo stok), serta saldo, harga rata-rata, dan nilai persediaan (ringkasan).
- User menyusun laporan pivot dengan baris, kolom, dan nilai terukur, lalu menyimpan susunan sebagai template brand.
- User mengekspor hasil ke Excel jika memiliki izin.
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Laporan saldo stok menampilkan stok per barang atau per varian SKU berdasarkan tanggal cutoff, cabang, work center, dan filter stok |
| FR-02 | Laporan menampilkan kuantitas sesungguhnya dan rencana kuantitas tersedia |
| FR-03 | Ringkasan persediaan barang menampilkan saldo sisa lot, satuan, harga rata-rata, dan nilai persediaan per SKU dan cabang |
| FR-04 | Laporan custom pivot menyusun matriks dari baris, kolom, dan nilai terukur atas kartu stok |
| FR-05 | User dapat menyimpan dan memuat ulang template pivot ke konfigurasi brand |
| FR-06 | Halaman stok dan nilai persediaan menampilkan filter master barang, kategori, jenis, supplier, dan gudang |
| FR-07 | User dengan izin Excel dapat mengekspor laporan saldo stok, ringkasan persediaan, dan pivot |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat laporan saldo stok |
| UC-02 | Melihat ringkasan persediaan barang |
| UC-03 | Menyusun laporan pivot persediaan |
| UC-04 | Menyimpan template pivot persediaan |
| UC-05 | Membuka laporan stok dan nilai persediaan |
| UC-06 | Mengekspor laporan saldo atau persediaan ke Excel |
4. Use Case Scenario
UC-01 : Melihat laporan saldo stok
| Aktor | User stok / akuntansi |
| Deskripsi | User melihat saldo stok brand pada tanggal tertentu per barang atau per SKU |
| Prekondisi | User sudah login, brand aktif, dan memiliki izin #lap-stok |
| Alur utama | 1. User membuka Laporan Stok lalu memilih Laporan Saldo Stok. 2. User mengisi periode/tanggal cutoff, cabang, work center, dan opsi stok bila perlu. 3. User dapat mencari nama barang. 4. User menekan tombol tampilkan. 5. User memilih tampilan per barang atau per varian SKU. 6. Sistem menampilkan kuantitas sesungguhnya dan rencana kuantitas tersedia. |
| Alur negatif | - Jika filter belum diisi, muncul "Lengkapi filter untuk menampilkan data". - Jika data tidak ditemukan atau gagal dimuat, muncul notifikasi "Data yang anda filter tidak ditemukan silahkan ganti filter". |
| Bisnis rule | - Default tampilan adalah per varian SKU. - Cutoff memakai akhir hari pada tanggal filter. - Hasil dapat di-cache di browser per kombinasi tanggal, cabang, dan work center. |
| Postkondisi | Tabel saldo stok tampil |
| Trigger | User menekan tombol tampilkan |
| Kode FR | FR-01 FR-02 |
UC-02 : Melihat ringkasan persediaan barang
| Aktor | User stok / akuntansi |
| Deskripsi | User melihat ringkasan saldo dan nilai persediaan barang hingga tanggal cutoff |
| Prekondisi | User sudah login dan memiliki izin #lap-persediaan-barang |
| Alur utama | 1. User membuka Laporan Ringkasan Persediaan Barang. 2. User mengisi periode/tanggal cutoff dan cabang bila perlu. 3. User menekan tombol tampilkan. 4. Sistem menampilkan kode SKU, nama barang, saldo, satuan, harga rata-rata, dan nilai persediaan. |
| Alur negatif | - Jika filter belum diisi, muncul "Lengkapi filter untuk menampilkan data". - Jika data kosong atau gagal, muncul notifikasi data tidak ditemukan. |
| Bisnis rule | - Rentang data dari tanggal inisiasi brand sampai akhir tanggal cutoff. - Hanya lot dengan sisa minimal 0,01 yang dihitung. - Harga rata-rata = nilai persediaan dibagi saldo. |
| Postkondisi | Tabel ringkasan persediaan tampil |
| Trigger | User menekan tombol tampilkan |
| Kode FR | FR-03 |
UC-03 : Menyusun laporan pivot persediaan
| Aktor | User stok / akuntansi |
| Deskripsi | User menyusun laporan custom persediaan dengan baris, kolom, dan nilai terukur |
| Prekondisi | User memiliki izin #lap-custom-stok |
| Alur utama | 1. User membuka Laporan Custom Stok / Persediaan Pivot. 2. User memilih periode, data baris, data kolom, dan nilai terukur. 3. User menekan Tampilkan Laporan. 4. Sistem menampilkan matriks pivot sesuai susunan. |
| Alur negatif | - Jika form belum lengkap, muncul alert "Oops Silahkan cek kembali form anda!". - Jika baris/kolom diubah setelah data tampil, muncul peringatan bahwa data perlu diperbarui. - Jika data tidak ditemukan, muncul pesan ganti filter. |
| Bisnis rule | - Maksimal 4 data baris. - Baris dan kolom tidak boleh saling tumpang tindih. - Nilai terukur berasal dari qty masuk, qty keluar, qty plan masuk, dan qty plan keluar. - Data sumber adalah kartu stok. |
| Postkondisi | Matriks pivot tampil |
| Trigger | User menekan Tampilkan Laporan |
| Kode FR | FR-04 |
UC-04 : Menyimpan template pivot persediaan
| Aktor | User stok / akuntansi |
| Deskripsi | User menyimpan susunan pivot agar dapat dipakai ulang |
| Prekondisi | Susunan baris, kolom, dan nilai sudah dipilih |
| Alur utama | 1. User menekan simpan template. 2. User mengisi nama laporan. 3. Sistem menyimpan template ke konfigurasi brand. 4. User dapat memilih template tersimpan dari daftar. |
| Alur negatif | - Jika penyimpanan gagal, template tidak muncul di daftar. |
| Bisnis rule | - Template disimpan di konfigurasi brand pada daftar laporan persediaan custom. |
| Postkondisi | Template tersimpan dan dapat dipilih ulang |
| Trigger | User menyimpan template |
| Kode FR | FR-05 |
UC-05 : Membuka laporan stok dan nilai persediaan
| Aktor | User stok / akuntansi |
| Deskripsi | User membuka halaman stok dan nilai persediaan beserta filter master |
| Prekondisi | User sudah login dan brand aktif |
| Alur utama | 1. User membuka halaman Stok dan Nilai Persediaan. 2. Sistem memuat opsi filter barang, kategori, jenis barang, supplier, dan gudang. 3. Sistem menampilkan tabel dengan kolom jenis, kategori, supplier utama, kode SKU, nama barang, qty stok, stok fisik, dan nilai persediaan. 4. User dapat membuka dialog cetak. |
| Alur negatif | - Tabel menampilkan empty state "Laporan Stok Kurang per Supplier Kosong" bila tidak ada baris. |
| Bisnis rule | - Halaman ini tidak terdaftar di hub kartu Laporan Stok. - Sumber baris tabel saat ini kosong di FE sehingga hasil laporan belum terisi otomatis dari filter. |
| Postkondisi | Halaman filter dan tabel terbuka |
| Trigger | User membuka route stok nilai persediaan |
| Kode FR | FR-06 |
UC-06 : Mengekspor laporan saldo atau persediaan ke Excel
| Aktor | User dengan izin Excel laporan terkait |
| Deskripsi | User mengunduh hasil laporan ke Excel |
| Prekondisi | Laporan sudah tampil atau filter siap, dan user punya izin Excel |
| Alur utama | 1. User menekan tombol export Excel. 2. Untuk saldo stok, sistem mengunduh file dari server "Laporan Saldo Stok.xlsx". 3. Untuk ringkasan persediaan, sistem menyusun Excel di browser "Laporan Ringkasan Persediaan Barang.xlsx". 4. Untuk pivot, sistem mengekspor matriks yang sedang tampil. |
| Alur negatif | - Jika filter/data kosong pada ringkasan, muncul "Gagal Print, Filter yang anda pilih tidak ditemukan!". - Jika export saldo gagal, muncul notifikasi error. |
| Bisnis rule | - Izin Excel saldo stok: #lap-stok.- Izin Excel ringkasan: #lap-persediaan-barang.- Izin akses pivot: #lap-custom-stok. |
| Postkondisi | File Excel terunduh |
| Trigger | User menekan export Excel |
| Kode FR | FR-07 |
5. Data Flow Diagram
DFD-01 — Alur data saldo dan persediaan stok
6. Sequence Diagram
SD-01 — UC-01 : Melihat laporan saldo stok
SD-02 — UC-02 : Melihat ringkasan persediaan barang
SD-03 — UC-03 : Menyusun laporan pivot persediaan
SD-04 — UC-04 : Menyimpan template pivot persediaan
SD-05 — UC-05 : Membuka laporan stok dan nilai persediaan
SD-06 — UC-06 : Mengekspor laporan saldo atau persediaan ke Excel
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
POST /report-stok/get-saldo-bulk | existing | - |
POST /report-stok/get-saldo-bulk-export | existing | - |
POST /laporan-barang-rinci/barang-masuk-rinci-report | existing | - |
POST /laporan-stok/kartu-stok-report | existing | - |
PUT /brand/config/:id | existing | - |
GET /gudang | existing | - |
GET /workcenter | existing | - |
POST /sku/get-bulk-sku | existing | - |